From: Marco Trevisan (TreviƱo) Date: Thu, 4 Feb 2021 16:37:02 +0000 (+0100) Subject: appDisplay: Do not bind popdown call to grabHelper onUngrab X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~616^2^2~470 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=e641547ddf2c2afb42b4f2d3f250d84e1463a710;p=gnome-shell.git appDisplay: Do not bind popdown call to grabHelper onUngrab grabHelper is passing a boolean argument to onUngrab() callback function and since commit 1acbdcc9b3b0 we'd end up adding it to to the callback list or we'd try to invoke it: (gnome-shell:3490851): Gjs-CRITICAL **: 17:19:20.460: JS ERROR: TypeError: func is not a function onComplete/<@/media/M2/GNOME/gnome-shell/js/ui/appDisplay.js:2407:56 onComplete@/media/M2/GNOME/gnome-shell/js/ui/appDisplay.js:2407:40 _makeEaseCallback/<@/media/M2/GNOME/gnome-shell/js/ui/environment.js:85:13 _easeActor/<@/media/M2/GNOME/gnome-shell/js/ui/environment.js:170:64 Use an arrow function so that we can control the parameters we pass to popdown. Part-of: --- diff --git a/js/ui/appDisplay.js b/js/ui/appDisplay.js index 2d81a8516..69b4d0fff 100644 --- a/js/ui/appDisplay.js +++ b/js/ui/appDisplay.js @@ -2574,8 +2574,10 @@ var AppFolderDialog = GObject.registerClass({ if (this._isOpen) return; - this._isOpen = this._grabHelper.grab({ actor: this, - onUngrab: this.popdown.bind(this) }); + this._isOpen = this._grabHelper.grab({ + actor: this, + onUngrab: () => this.popdown(), + }); if (!this._isOpen) return;